-
-
Notifications
You must be signed in to change notification settings - Fork 38
docs: release 2.8.0 #381
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: release 2.8.0 #381
Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
WalkthroughThe pull request includes significant updates to several documentation files related to authentication and data modeling in the ZenStack framework. Key changes involve marking the Lucia integration as deprecated, updating references from "NextAuth" to "Auth.js," enhancing clarity in edge deployment guidelines, introducing a new guide on typing JSON fields, and expanding the ZModel language reference. These modifications aim to improve user awareness and documentation clarity while retaining the technical content relevant to existing implementations. Changes
Possibly related PRs
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (13)
docs/guides/authentication/lucia.md (3)
7-11: Enhance the deprecation notice with migration guidance.While the deprecation notice is clear, it would be more helpful to provide guidance on recommended alternatives for authentication. Consider adding information about preferred authentication solutions (e.g., Auth.js) and potential migration paths.
# Integrating With Lucia (Deprecated) :::info -Lucia's is [not in active development anymore](https://github.com/lucia-auth/lucia/discussions/1714). +Lucia is [no longer in active development](https://github.com/lucia-auth/lucia/discussions/1714). We recommend using [Auth.js](./auth-js) for new projects. For migration guidance, please refer to our [migration guide](../migrations/lucia-to-authjs). :::
Line range hint
13-24: Consider adding a maintenance status banner.While the technical content remains accurate, it would be helpful to add a prominent notice at the top of each major section indicating that while this integration still works, it's in maintenance mode and won't receive future updates. This helps users make informed decisions when implementing authentication in their projects.
+:::note +While this integration remains functional, it is in maintenance mode and won't receive future updates. Consider using our actively maintained authentication solutions for new projects. +::: [Lucia](https://lucia-auth.com/) is an auth library for your server that abstracts away the complexity of handling sessions...
10-10: Fix typo in deprecation notice.There's a grammatical error in the deprecation notice.
-Lucia's is [not in active development anymore](https://github.com/lucia-auth/lucia/discussions/1714). +Lucia is [not in active development anymore](https://github.com/lucia-auth/lucia/discussions/1714).docs/guides/typing-json.md (6)
6-16: Enhance the Preview feature documentation.Consider adding:
- A note explaining what "Preview" means for users (e.g., API stability, production readiness)
- The minimum version of ZenStack required for this feature
47-49: Provide more context about type inheritance limitations.Consider expanding on:
- Why inheritance isn't supported yet
- What kind of inheritance will be supported in future releases
- Any workarounds available in the meantime
64-68: Expand @JSON attribute documentation.Consider adding:
- Available options/parameters for the @JSON attribute
- Whether it supports arrays or nested objects
- Any performance implications
74-78: Clarify import path in the example.The import path
~/dbis project-specific. Consider:
- Using a more generic import path
- Adding a note about how to set up the database client
-import { prisma } from '~/db'; +import { PrismaClient } from '@prisma/client'; + +const prisma = new PrismaClient();
125-171: Enhance validation examples and error handling guidance.Consider adding:
- More complex validation scenarios (e.g., conditional validation, custom validators)
- Best practices for handling validation errors in production
- Examples of custom error messages
172-198: Expand TypeScript and Zod integration examples.Consider adding:
- Advanced usage patterns (e.g., type inference, partial types)
- Integration examples with popular form libraries (e.g., React Hook Form, Formik)
- Error handling patterns with Zod schemas
docs/reference/zmodel-language.md (4)
26-33: Consider adding details about multi-schema files support.While the addition of multi-schema files support to the list is valuable, it would be helpful to add a dedicated section or subsection explaining this feature, including:
- How to use multiple schema files
- Best practices for organizing schemas across files
- Limitations or considerations when using multiple files
🧰 Tools
🪛 LanguageTool
[style] ~26-~26: Consider replacing this phrase with the adverb “naturally” to avoid wordiness.
Context: ...us to build the functionalities we want in a natural way, so we made several extensions to the l...(IN_A_X_MANNER)
290-332: LGTM! Well-structured Type documentation.The Type construct documentation is comprehensive and well-organized. It effectively covers the purpose, syntax, use cases, and limitations. The example effectively demonstrates the @JSON attribute usage.
Consider adding a "See also" section at the end to link to related topics like JSON field typing guide and @JSON attribute documentation for better navigation.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~307-~307: You might be missing the article “the” here.
Context: ...Needs to be a valid identifier matching regular expression[A-Za-z][a-za-z0-9_]\*. -...(AI_EN_LECTOR_MISSING_DETERMINER_THE)
Line range hint
1160-1184: Enhance field documentation to clarify model vs. type fields.While the documentation now correctly covers fields in both models and types, consider adding:
- A comparison table or section highlighting differences between model fields and type fields
- Specific constraints or behaviors unique to each context
- Examples showing field usage in both models and types
🧰 Tools
🪛 LanguageTool
[uncategorized] ~1180-~1180: You might be missing the article “the” here.
Context: ...Needs to be a valid identifier matching regular expression[A-Za-z][a-za-z0-9_]\*. -...(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[style] ~1184-~1184: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...*[FIELD_TYPE]** Type of the field. Can be a scalar type, a reference to anothe...(MISSING_IT_THERE)
699-706: Add more examples for @JSON attribute usage.The @JSON attribute documentation is clear but could be enhanced with:
- Multiple examples showing different use cases
- Common patterns and best practices
- Examples of how the attribute affects the generated Prisma Client types
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (5)
docs/guides/authentication/lucia.md(1 hunks)docs/guides/authentication/next-auth.md(3 hunks)docs/guides/edge.md(1 hunks)docs/guides/typing-json.md(1 hunks)docs/reference/zmodel-language.md(6 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/guides/authentication/next-auth.md
[uncategorized] ~9-~9: ‘In’ is unnecessary in most cases before the expression ‘next .’.
Context: ...amework for implementing authentication in Next.js projects. It offers a pluggable mech...
(CONFUSION_OF_NN_IN_NEXT_NNP)
[misspelling] ~38-~38: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ...arget=blank'). ### Adapter Adapter is a Auth.js mechanism for hooking in custom...
(EN_A_VS_AN)
docs/guides/typing-json.md
[uncategorized] ~51-~51: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...hey aren't tables anyway). ## Defining strongly-typed JSON fields You can then use these typ...
(HYPHENATED_LY_ADVERB_ADJECTIVE)
[style] ~121-~121: This expression usually appears with a “please” in front of it.
Context: ...lational field (which involves joins). [Let us know your thoughts](https://discord.gg/Ykhr7...
(INSERT_PLEASE)
docs/reference/zmodel-language.md
[style] ~26-~26: Consider replacing this phrase with the adverb “naturally” to avoid wordiness.
Context: ...us to build the functionalities we want in a natural way, so we made several extensions to the l...
(IN_A_X_MANNER)
[style] ~250-~250: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...- [NAME]: Name of the model. Needs to be unique in the entire model. Needs to...
(REP_NEED_TO_VB)
[style] ~250-~250: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...Needs to be unique in the entire model. Needs to be a valid identifier matching regular ...
(REP_NEED_TO_VB)
[uncategorized] ~250-~250: You might be missing the article “the” here.
Context: ...Needs to be a valid identifier matching regular expression [A-Za-z][a-za-z0-9_]\*. -...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~307-~307: You might be missing the article “the” here.
Context: ...Needs to be a valid identifier matching regular expression [A-Za-z][a-za-z0-9_]\*. -...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~1180-~1180: You might be missing the article “the” here.
Context: ...Needs to be a valid identifier matching regular expression [A-Za-z][a-za-z0-9_]\*. -...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[style] ~1184-~1184: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...*[FIELD_TYPE]** Type of the field. Can be a scalar type, a reference to anothe...
(MISSING_IT_THERE)
🪛 Markdownlint
docs/guides/authentication/next-auth.md
13-13: Expected: h2; Actual: h3
Heading levels should only increment by one level at a time
(MD001, heading-increment)
🔇 Additional comments (6)
docs/guides/edge.md (6)
Line range hint 101-121: LGTM! Clear distinction between regular and edge runtime imports.
The documentation clearly emphasizes the importance of using @zenstackhq/runtime/edge instead of @zenstackhq/runtime for edge environments, which is crucial for preventing runtime errors.
Line range hint 82-82: Verify the sample repository reference.
The documentation references a specific branch "v2-edge" in the sample repository. Let's verify its existence and content.
#!/bin/bash
# Description: Verify the referenced sample repository branch
# Test: Check if the branch exists and contains edge runtime configuration
gh repo clone zenstackhq/sample-todo-nextjs-tanstack
cd sample-todo-nextjs-tanstack
git checkout v2-edge
rg -l "runtime.*=.*'edge'"Line range hint 15-17: Verify the Prisma documentation links.
The section references Prisma's edge documentation. Let's ensure the links are valid and up-to-date.
#!/bin/bash
# Description: Check if the referenced Prisma documentation URLs are valid
# Test: Extract and verify URLs
curl -s -o /dev/null -w "%{http_code}" https://www.prisma.io/docs/accelerate
curl -s -o /dev/null -w "%{http_code}" https://www.prisma.io/docs/orm/prisma-client/deployment/edge/overviewLine range hint 123-125: Verify current status of D1 database support.
Let's verify if the limitation regarding D1 database support is still current.
✅ Verification successful
Let me generate additional verification scripts to check for any recent updates or changes regarding D1 database support.
D1 database support limitation is still current
The documentation accurately reflects the current state. D1 database remains unsupported in ZenStack due to Prisma's lack of support for interactive transactions with D1, which ZenStack requires for enforcing access policies. This limitation is consistently documented across multiple files and there have been no recent commits indicating any changes to this status.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check for any updates regarding D1 database support
# Test 1: Check for D1-related issues or discussions
gh issue list --repo zenstackhq/zenstack --search "D1 database" --state all --limit 5
# Test 2: Check for any D1-related code or documentation
rg -i "cloudflare.*d1|d1.*database"
Length of output: 21113
Script:
#!/bin/bash
# Check for any recent commits or changes related to D1 database support
git log --since="6 months ago" -i --grep="d1\|cloudflare" --pretty=format:"%h %ad %s"
# Check for any recent changes in documentation or code related to D1
rg -i "d1.*support|cloudflare.*d1" --type md --type ts --type js
# Check Prisma's documentation or discussions about D1 support
rg -i "prisma.*d1|d1.*transaction"
Length of output: 1213
Line range hint 84-99: Verify if the bcryptjs workaround is still necessary.
The documentation describes a workaround for bcryptjs compatibility. Let's verify if this is still the current solution or if there's a better approach.
✅ Verification successful
The bcryptjs workaround is still necessary and correctly documented
The workaround for bcryptjs compatibility in edge runtime environments is still necessary and accurately documented. The evidence shows:
-
The issue is actively present in the codebase:
@zenstackhq/runtimestill depends on bcryptjs (found in package.json files)- The edge runtime compatibility issue with bcryptjs is documented in multiple places
-
The workaround is the current recommended solution:
- The documentation in
docs/guides/edge.mdcorrectly describes the issue with bcryptjs in Vercel Edge Runtime - The solution to add
"browser": { "crypto": false }to package.json is still the valid approach - This is further confirmed by recent blog posts (e.g.,
blog/adapt-to-edge/index.md) that discuss this specific workaround
- The documentation in
-
No alternative solution has been implemented:
- The codebase continues to use bcryptjs for password hashing
- The edge runtime compatibility is handled through this package.json configuration
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check for recent issues or discussions about bcryptjs compatibility
# Test 1: Check for related issues
gh issue list --repo zenstackhq/zenstack --label "edge-runtime" --search "bcryptjs" --state all --limit 5
# Test 2: Check if the runtime package still depends on bcryptjs
rg -l "bcryptjs" "package.json"
Length of output: 133
Script:
#!/bin/bash
# Let's try a different approach to verify the bcryptjs usage and edge runtime compatibility
# Check for bcryptjs in all package.json files and package-lock.json
fd "package(-lock)?.json" --exec rg -l "bcryptjs" {}
# Search for bcryptjs related code or configuration
rg -i "bcryptjs" -A 3 -B 3
# Look for edge runtime related configurations
rg -i "edge.*runtime|edge.*function" -A 3 -B 3
Length of output: 47473
6-6: Verify if edge runtime support is stable enough to remove the preview tag.
The title no longer indicates this as a preview feature. Let's verify the stability of edge runtime support in the codebase.
✅ Verification successful
Edge runtime support is now stable and well-documented
Based on the content of edge.md, removing the preview tag is justified because:
- The documentation shows mature edge runtime support with detailed implementation guidelines
- Clear support for major platforms (Vercel Edge Runtime and Cloudflare Workers)
- Specific implementation details and caveats are well documented
- Working example repository is provided (sample-todo-nextjs-tanstack)
- Known limitations are explicitly documented (like D1 database support)
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check for any preview/experimental flags or recent issues related to edge runtime
# Test 1: Check for preview/experimental flags in code
rg -i "preview|experimental.*edge"
# Test 2: Check recent edge-related issues
gh issue list --label "edge-runtime" --state all --limit 10
Length of output: 619
Script:
#!/bin/bash
# Let's try a different approach to verify edge runtime stability
# Check for any mentions of edge runtime being preview/experimental in docs
rg -i "preview.*edge|experimental.*edge" docs/
# Look for edge runtime related changes in recent commits
git log --grep="edge" --since="6 months ago" --pretty=format:"%h %s"
# Search for edge runtime implementation files
fd -t f -e ts -e js edge
# Check for any edge-related tests
fd -t f test.*edge
Length of output: 167
Script:
#!/bin/bash
# Let's check the content of the edge.md file and related documentation
# Check the full content of edge.md
cat docs/guides/edge.md
# Look for any edge-related files in the docs directory
fd . docs/ -t f -x grep -l "edge" {} \;
# Check package.json for edge-related dependencies and features
cat package.json | grep -i "edge"
Length of output: 5503
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (8)
docs/guides/typing-json.md (8)
6-16: Consider adding preview feature stability notice and migration guidance.Since this is a preview feature, it would be helpful to:
- Add a notice about potential breaking changes in future releases
- Provide guidance on migrating existing untyped JSON fields to typed ones
22-50: Enhance type definition documentation.Consider adding:
- A list of supported field types (are all Prisma scalar types supported?)
- Any constraints on field types (e.g., can arrays be used?)
- Examples of unsupported type configurations
53-69: Clarify JSON field usage scenarios.Please add information about:
- Whether multiple JSON fields of the same type are allowed in a model
- If JSON fields can be optional (e.g.,
profile Profile? @json)- Default value handling for JSON fields
70-124: Enhance PrismaClient integration examples.Consider adding:
- More complex query examples involving nested JSON fields
- Examples of bulk operations (createMany, updateMany)
- Performance implications of JSON field queries
🧰 Tools
🪛 LanguageTool
[style] ~121-~121: This expression usually appears with a “please” in front of it.
Context: ...lational field (which involves joins). [Let us know your thoughts](https://discord.gg/Ykhr7...(INSERT_PLEASE)
121-121: Add "please" to the feedback request.For better courtesy, revise to: "Please let us know your thoughts on this!"
🧰 Tools
🪛 LanguageTool
[style] ~121-~121: This expression usually appears with a “please” in front of it.
Context: ...lational field (which involves joins). [Let us know your thoughts](https://discord.gg/Ykhr7...(INSERT_PLEASE)
125-171: Expand validation documentation.Consider adding:
- Complex validation scenarios (e.g., conditional validation)
- Performance implications of validation on large JSON objects
- Custom validation function examples
172-199: Add practical integration examples.Consider adding:
- Integration examples with popular form libraries (e.g., React Hook Form)
- Custom Zod transformations for JSON fields
- Error handling best practices
200-208: Enhance limitations section.Consider adding:
- Workarounds for current limitations where possible
- Rough timeline estimates for addressing limitations
- Any performance or scalability limitations
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
docs/guides/typing-json.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/guides/typing-json.md
[uncategorized] ~51-~51: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...hey aren't tables anyway). ## Defining strongly-typed JSON fields You can then use these typ...
(HYPHENATED_LY_ADVERB_ADJECTIVE)
[style] ~121-~121: This expression usually appears with a “please” in front of it.
Context: ...lational field (which involves joins). [Let us know your thoughts](https://discord.gg/Ykhr7...
(INSERT_PLEASE)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (4)
docs/the-complete-guide/part1/1-zmodel.md (1)
178-192: LGTM! Well-structured documentation about comments.The added documentation tip effectively explains the different types of comments in ZModel and their purposes. The example is clear and demonstrates proper usage of documentation comments.
Consider adding a note about how documentation comments affect generated documentation artifacts (if any) beyond IDE tooltips.
docs/reference/cli.md (1)
161-161: Enhance documentation for the new --load-path optionThe description for the new
--load-pathoption could be more detailed to help users understand:
- What specific types of modules are loaded from this path
- Common scenarios where customizing this path would be useful
- How it interacts with the
--prisma-clientoptionConsider expanding the description to something like:
-| --load-path <path> | Path to load modules generated by ZenStack. | "node_modules/.zenstack" | +| --load-path <path> | Path to load ZenStack-generated modules (e.g., enhanced PrismaClient, policy handlers). Useful when using custom build output locations or monorepo setups. | "node_modules/.zenstack" |docs/reference/zmodel-language.md (2)
699-706: Consider enhancing the @JSON attribute documentation.While the documentation covers the basic functionality, it would be more helpful with:
- A practical example showing usage
- Details about type validation behavior
Consider adding:
attribute @json()Marks a field to be strong-typed JSON. The field's type must be a Type declaration.
+
+### Example
+```zmodel
+type Address {
- street String
- city String
- country String
+}+model User {
--- `1854-1885`: **Fix minor grammatical issue in the comments section.** The section provides excellent documentation about different comment styles. There's a minor grammatical issue to fix. Apply this change: ```diff -You can also use JSDoc-style comments as documentation, however they are not passed along to the generated Prisma schema. +You can also use JSDoc-style comments as documentation; however, they are not passed along to the generated Prisma schema.🧰 Tools
🪛 LanguageTool
[typographical] ~1871-~1871: The word “however” is an adverb that can’t be used like a conjunction, and therefore needs to be separated from the sentence.
Context: ...se JSDoc-style comments as documentation, however they are not passed along to the genera...(HOWEVER_SENTENCE)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (3)
docs/reference/cli.md(1 hunks)docs/reference/zmodel-language.md(7 hunks)docs/the-complete-guide/part1/1-zmodel.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/reference/zmodel-language.md
[style] ~26-~26: Consider replacing this phrase with the adverb “naturally” to avoid wordiness.
Context: ...us to build the functionalities we want in a natural way, so we made several extensions to the l...
(IN_A_X_MANNER)
[style] ~250-~250: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...- [NAME]: Name of the model. Needs to be unique in the entire model. Needs to...
(REP_NEED_TO_VB)
[style] ~250-~250: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...Needs to be unique in the entire model. Needs to be a valid identifier matching regular ...
(REP_NEED_TO_VB)
[style] ~1184-~1184: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...*[FIELD_TYPE]** Type of the field. Can be a scalar type, a reference to anothe...
(MISSING_IT_THERE)
[typographical] ~1871-~1871: The word “however” is an adverb that can’t be used like a conjunction, and therefore needs to be separated from the sentence.
Context: ...se JSDoc-style comments as documentation, however they are not passed along to the genera...
(HOWEVER_SENTENCE)
🔇 Additional comments (3)
docs/reference/cli.md (1)
160-160:
Breaking Change: Update in --prisma-client default path
The removal of "./" from the default path is a breaking change that should be clearly documented in the release notes. Consider adding a migration note for users who might be relying on the old path format.
Let's check if this path is referenced in other documentation files:
docs/reference/zmodel-language.md (2)
290-332: LGTM! Well-structured documentation for the Type construct.
The section effectively introduces the Type construct with clear explanations, practical use cases, syntax, and examples. The limitations are clearly documented.
Line range hint 1160-1176: LGTM! Clear documentation of field definitions.
The section effectively explains field definitions for both models and types with clear syntax examples.
🧰 Tools
🪛 LanguageTool
[style] ~1184-~1184: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...*[FIELD_TYPE]** Type of the field. Can be a scalar type, a reference to anothe...
(MISSING_IT_THERE)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Outside diff range and nitpick comments (2)
docs/guides/typing-json.md (2)
10-16: Consider enhancing the transition between Prisma and ZenStack features.While the introduction effectively explains JSON fields and their use cases, consider adding a brief sentence explaining what specific problems ZenStack solves compared to Prisma's basic JSON type support. This would help users better understand the value proposition.
JSON fields provide great flexibility but at the cost of losing strong typing and validation. ZenStack's strongly typed JSON field feature helps you regain the lost benefits. +For example, while Prisma only provides basic JSON type support, ZenStack adds TypeScript types, runtime validation, and enhanced developer experience.
202-211: Consider restructuring the limitations section.The limitations section could be more structured to help users better understand the impact of each limitation. Consider:
- Grouping limitations by their impact (e.g., type system limitations vs. runtime limitations)
- Adding brief explanations of the implications of each limitation
## Limitations This feature is in preview and has the following limitations: +### Type System Limitations 1. Types cannot inherit from other types. 1. Models cannot inherit from types. 1. Types and abstract models are conceptually similar and they should probably be consolidated. + +### Runtime Limitations 1. JSON field members cannot be used in access policies. + +### Impact and Workarounds +- For type inheritance limitations, you can currently work around this by duplicating fields +- For access policy limitations, consider storing sensitive data in regular columns instead of JSON fields We would like to continue gathering feedback and address these limitations in future releases.🧰 Tools
🪛 LanguageTool
[uncategorized] ~208-~208: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...abstract models are conceptually similar and they should probably be consolidated. 1...(COMMA_COMPOUND_SENTENCE)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
docs/guides/typing-json.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/guides/typing-json.md
[uncategorized] ~51-~51: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...hey aren't tables anyway). ## Defining strongly-typed JSON fields You can then use these typ...
(HYPHENATED_LY_ADVERB_ADJECTIVE)
[style] ~123-~123: This expression usually appears with a “please” in front of it.
Context: ...lational field (which involves joins). [Let us know your thoughts](https://discord.gg/Ykhr7...
(INSERT_PLEASE)
[uncategorized] ~208-~208: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...abstract models are conceptually similar and they should probably be consolidated. 1...
(COMMA_COMPOUND_SENTENCE)
🔇 Additional comments (2)
docs/guides/typing-json.md (2)
1-9: LGTM! Well-structured document header.
The document follows documentation best practices with proper frontmatter, clear preview status indication, and appropriate attribution to inspiration sources.
18-50: Verify type nesting depth limitations.
The documentation clearly explains type declarations and their current limitations. However, it would be helpful to verify and document if there are any limitations on type nesting depth (how deeply types can be nested within each other).
Summary by CodeRabbit
Release Notes
replcommand, adding new options and clarifying existing ones.